package com.glela.platform.service;

import java.util.List;
import java.util.Map;
import com.glela.platform.model.UserAddress;
import com.glela.platform.model.response.ProvinceVo;
import com.glela.platform.vo.UserAddressVo;

public interface UserAddressService {

	/**
	 * 根据id查询用户收货地址
	 * 
	 * @param Id
	 *            用户id
	 * @return
	 */
	public List<UserAddressVo> listUserAddressPage(long userId, int page, int pageSize);

	/**
	 * 添加收货地址
	 * 
	 * @param Id
	 *            用户id
	 * @return
	 */
	public int addUserAddress(UserAddress userAddress);

	/**
	 * 根据id修改收货地址
	 * 
	 * @param userAddress
	 *            用户id
	 * @return
	 */
	public int changeUseraddressByuserId(UserAddress userAddress);

	/**
	 * 删除收货地址
	 * 
	 * @param Id
	 *            用户id
	 * @return
	 */
	public int removeUseraddressByuserId(long userId, long id);

	/**
	 * 查询用户默认收货地址
	 * 
	 * @param Id
	 *            用户id
	 * @return
	 */
	public UserAddressVo selectDefaultAddress(long userId);

	/**
	 * 获取用户地址
	 * @param id 用户地址id
	 * @return UserAddress
	 * @author zls
	 * @date 2017年6月9日 下午1:24:14
	 */
	public UserAddress selectUserAddressById(long id);

	public UserAddress selectUserAddressById(long userId, long id);

	public int changeDefaultAddress(long userId, long addressId);

	/**
	 * 获取中国所有省市区数据
	 * 
	 * @author 卫耀华
	 * @return
	 */
	public List<ProvinceVo> provinceCityArea();
	
	/**
	 * 根据区划等级查询
	 * @param parentId 
	 */
	public List<Map<String,Object>> getZoneByLevelAndParentId(int zongLevel, int parentId);
	
	/**
	 * 根据银行ID、市ID查询分行
	 */
	public Map<String, List<Map<String, Object>>> getBranchBankList(int bankId, int cityId);

}
